package com.mikao.service;

import com.mikao.dto.bo.ReqDataTableDto;
import com.mikao.dto.bo.SysRoleForm;
import com.mikao.dto.vo.SysRoleDto;
import com.mikao.dto.vo.RoleNameDto;
import com.mikao.dto.vo.RspDataTableDto;

import java.util.List;

/**
 * @author KennyDavid
 */
public interface SysRoleService {

    /**
     * 角色列表
     *
     * @return list
     */
    List<RoleNameDto> getRoleList();

    /**
     * 角色分页列表
     *
     * @param dataTableDTO 封装
     * @return 封装类
     */
    RspDataTableDto<SysRoleDto> getRolePage(ReqDataTableDto dataTableDTO);

    /**
     * 添加角色
     *
     * @param sysRoleForm 角色表单
     */
    void saveRole(SysRoleForm sysRoleForm);

    /**
     * 删除角色
     *
     * @param roleId id
     * @return bool
     */
    Boolean deleteRole(Long roleId);

    /**
     * 判断角色名是否存在
     *
     * @param role id
     * @return bool
     */
    Boolean isRoleExist(String role);
}
